home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 29 / PC Gamer IT CD 29 2-2.iso / patch / FIX_IE4 / ie4patnt_ita.exe / 1033 / RCDATA / CABINET / mshtml.dll / HTML / EDLINK.DLG < prev    next >
Text File  |  1997-10-21  |  8KB  |  287 lines

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML 3.2//EN">
  2. <HTML id=dlgLink style="font-family: ms sans serif; font-size: 8pt;
  3. width: 35.7em; height: 12.3em; ">
  4. <HEAD>
  5. <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
  6. <TITLE>Collegamento ipertestuale</TITLE>
  7. <SCRIPT>
  8. function callHelp(elm)
  9. {
  10. if (null != elm.helpid)
  11. {
  12.  window.showHelp(elm.helpfile, "" + parseInt(elm.helpid),
  13.   "popup");
  14. }
  15. else
  16. {
  17.  if ("BODY" != elm.tagName)
  18.  {
  19.   callHelp(elm.parentElement);
  20.  }
  21. }
  22. function btnCancelClick()
  23. {
  24. window.close();
  25. function getTextRange(elm)
  26. {
  27. var r = elm.parentTextEdit.createTextRange();
  28. r.moveToElementText(elm);
  29. return r;
  30. function mouseClick()
  31. {
  32. if (window.event.srcElement.id.substring(0,3)
  33.  == "txt")
  34. {
  35.  return;
  36. }
  37. if (window.event.button == 2)
  38. {
  39.  callHelp(window.event.srcElement);
  40. }
  41. function txtDefaultESC()
  42. {
  43. if (event.keyCode == 27)
  44. {
  45.  window.close();
  46.  return;
  47. }
  48. window.onerror = HandleError
  49. function HandleError(message, url, line)
  50. {
  51. var L_Dialog_ErrorMessage = "Si Φ verificato un errore nella finestra di dialogo.";
  52. var L_ErrorNumber_Text = "Errore: ";
  53. var str = L_Dialog_ErrorMessage + "\n\n" 
  54.  + L_ErrorNumber_Text + line + "\n"
  55.  + message;
  56. alert (str);
  57. window.close();
  58. return true;
  59. }
  60. var g_fOKEnabled = false; 
  61. var g_fURLLoaded = false; 
  62. function findAnchor(range)
  63. {
  64.  var rangeWorking;
  65.  var elmWorking;
  66.  var index;
  67.  elmWorking = range.parentElement()
  68.  while ("HTML" != elmWorking.tagName)
  69.  {
  70.   if ("A" == elmWorking.tagName)
  71.   {
  72.    return elmWorking;
  73.   }
  74.   else
  75.   {
  76.    elmWorking = elmWorking.parentElement
  77.   }
  78.  }
  79.  rangeWorking = range.duplicate();
  80.  rangeWorking.collapse(true);
  81.  rangeWorking.moveEnd("character", 1);
  82.  while (rangeWorking.compareEndPoints("EndToEnd", range) < 0)
  83.  {
  84.   rangeWorking.move("Character");
  85.   if (null != findAnchor(rangeWorking))
  86.   {
  87.    return findAnchor(rangeWorking);
  88.   }
  89.  }
  90.  return null;
  91. function getProtocolFromURL(strURL)
  92. {
  93.  var index;
  94.  return strURL.substring(0, strURL.indexOf(":") + 1);
  95. function updateProtocolSel()
  96. {
  97.  var index;
  98.  var strProtocol = getProtocolFromURL(txtURL.value);
  99.  selProtocol.value = strProtocol;
  100.  if (selProtocol.value != strProtocol)
  101.  {
  102.   selProtocol.value = "";
  103.  }
  104. function updateProtocolTxt()
  105. {
  106.  var strSlashProts = " file:ftp:gopher:http:https:";
  107.  var strProtocolTxt = getProtocolFromURL(txtURL.value);
  108.  var strProtocolSel = selProtocol.value;
  109.  var strTempURL;
  110.  if ("//" == (txtURL.value.substring(strProtocolTxt.length,
  111.   strProtocolTxt.length + 2)))
  112.  {
  113.   strProtocolTxt = strProtocolTxt + "//";
  114.  }
  115.  strTempURL = txtURL.value.substring(strProtocolTxt.length);
  116.  if (0 < strSlashProts.indexOf(strProtocolSel))
  117.  {
  118.   strProtocolSel = strProtocolSel + "//";
  119.  }
  120.  txtURL.value = strProtocolSel + strTempURL;
  121. function setOKState(fKeyPress)
  122. {
  123.  var htmlKeyAlt = 18;
  124.  if (!g_fURLLoaded)
  125.  {
  126.   if (!fKeyPress || htmlKeyAlt != event.keyCode)
  127.   {
  128.    if ((("" == txtURL.value) || (txtURL.value == selProtocol.value)
  129.     ||(txtURL.value == selProtocol.value + "//"))
  130.     == g_fOKEnabled)
  131.    {
  132.     btnOK.disabled = g_fOKEnabled
  133.     g_fOKEnabled = !g_fOKEnabled;
  134.    }
  135.   }
  136.   else
  137.   {
  138.    window.setTimeout("setOKState(false)", 10);
  139.   }
  140.  }
  141. function bdyLoad()
  142. {
  143.  var globalDoc = window.dialogArguments.document;
  144.  var rngMaster;
  145.  var rngLink;
  146.  var elmLink;
  147.  document.onhelp  = new 
  148.   Function("callHelp(window.event.srcElement)");
  149.  document.onmouseup = new Function("mouseClick()");
  150.  selProtocol.onchange = new Function("updateProtocolTxt()");
  151.  btnOK.onclick = new Function("btnOKClick()");
  152.  btnCancel.onclick = new Function("btnCancelClick()");
  153.  txtURL.onfocus = new Function("txtURL.select()");
  154.  txtURL.onkeyup = new Function("setOKState(true)");
  155.  txtURL.onkeypress = new Function("txtDefaultESC()");
  156.  if ("Control" == globalDoc.selection.type)
  157.  {
  158.   rngMaster = globalDoc.selection.createRange();
  159.   if (1 == rngMaster.length)
  160.   {
  161.    rngMaster = getTextRange(rngMaster(0));
  162.    rngMaster.select();
  163.   }
  164.  }
  165.  if (("Text" == globalDoc.selection.type) ||
  166.   ("None" == globalDoc.selection.type))
  167.  {
  168.   rngMaster = globalDoc.selection.createRange();
  169.   elmLink = findAnchor(rngMaster);
  170.   if (null != elmLink)
  171.   {
  172.    rngLink = getTextRange(elmLink);
  173.    if (rngLink.compareEndPoints("StartToStart", rngMaster) < 0)
  174.    {
  175.     rngMaster.setEndPoint("StartToStart", rngLink);
  176.    }
  177.    if (rngLink.compareEndPoints("EndToEnd", rngMaster) > 0)
  178.    {
  179.     rngMaster.setEndPoint("EndToEnd", rngLink);
  180.    }
  181.    rngMaster.select();
  182.    if ("" != elmLink.href)
  183.    {
  184.     txtURL.value = elmLink.href;
  185.     txtURL.href = elmLink.href;
  186.     g_fURLLoaded = true;
  187.     btnOK.disabled = false;
  188.    }
  189.    updateProtocolSel();
  190.   }
  191.  txtURL.focus();
  192.  txtURL.select();
  193.  setOKState(false);
  194.  }
  195. function btnOKClick()
  196. {
  197.  var globalDoc = window.dialogArguments.document;
  198.  var cmdCreateLink = "CreateLink";
  199.  var cmdUnlink  = "Unlink";
  200.  var range = globalDoc.selection.createRange();
  201.  var strSlashProts = " file:ftp:gopher:http:https:";
  202.  var strProtocol = selProtocol.value; 
  203.  if ("" == txtURL.value)
  204.  {
  205.   range.execCommand(cmdUnlink, false);
  206.   window.close();
  207.   return;
  208.  }
  209.  if (g_fURLLoaded && (txtURL.value == txtURL.href))
  210.  {
  211.   window.close();
  212.   return;
  213.  }
  214.  updateProtocolSel();
  215.  if (0 < strSlashProts.indexOf(strProtocol))
  216.  {
  217.   strProtocol = strProtocol + "//";
  218.  }
  219.  range.execCommand(cmdCreateLink, false, txtURL.value);
  220.  window.close();
  221. </SCRIPT>
  222. </HEAD>
  223. <BODY style="font-family: ms sans serif; font-size: 8pt;
  224. background: threedface;" onLoad="bdyLoad()">
  225. <FIELDSET id=fldLink style="font-family: ms sans serif; font-size: 8pt; 
  226. position: absolute; left: 0.98em; top: .8em; width: 25.76em; 
  227. height: 7.9em;">
  228. <LEGEND>
  229. Informazioni sul collegamento ipertestuale
  230. </LEGEND>
  231. </FIELDSET>
  232. <DIV id=div2 style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  233. left: 1.82em; top: 2.8899em; width: 2.66em; height: 1.2168em; ">
  234. <LABEL FOR=selProtocol tabIndex=-1 helpid="35550" helpfile="msimn.hlp">
  235. <u>T</u>ipo:
  236. </LABEL>
  237. </DIV>
  238. <select id=selProtocol size=1 ACCESSKEY="t" tabIndex=50
  239. style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  240. left: 5.04em; top: 2.7378em; width: 6.44em; height: 2.1294em; "
  241. helpid="35550" helpfile="msimn.hlp">
  242. <OPTION value="">     (altro) </OPTION>
  243. <OPTION value="file:">   file: </OPTION>
  244. <OPTION value="ftp:">    ftp: </OPTION>
  245. <OPTION value="gopher:">   gopher: </OPTION>
  246. <OPTION value="http:" SELECTED> http: </OPTION>
  247. <OPTION value="https:">   https: </OPTION>
  248. <OPTION value="mailto:">   mailto: </OPTION>
  249. <OPTION value="news:">   news: </OPTION>
  250. <OPTION value="telnet:">   telnet: </OPTION>
  251. <OPTION value="wais:">   wais: </OPTION>
  252. </select>
  253. <DIV id=div3 style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  254. left: 1.82em; top: 5.9319em; width: 2.52em; height: 1.2168em; ">
  255. <LABEL FOR=txtURL tabIndex=-1 helpid="35550" helpfile="msimn.hlp">
  256. <u>U</u>RL:
  257. </LABEL>
  258. </DIV>
  259. <input accesskey="u" ID="txtURL" value="http://" type=text size="35"
  260. maxlength=1024 tabIndex=15 helpid="35550" helpfile="msimn.hlp"
  261. style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  262. left: 5.04em; top: 5.6277em; width: 20.72em; height: 2.1294em; ">
  263. <BUTTON id=btnOK tabIndex=35 DISABLED=1 helpid="28443" helpfile="windows.hlp"
  264. style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  265. left: 28em; top: 1.521em; width: 7em; height: 2.2em; " type=submit>
  266. OK
  267. </BUTTON>
  268. <BUTTON id=btnCancel tabIndex=40 helpid="28444" helpfile="windows.hlp"
  269. style="font-family: ms sans serif; font-size: 8pt; position: absolute;
  270. left: 28em; top: 4.1067em; width: 7em; height: 2.2em; " type=reset>
  271. Annulla
  272. </BUTTON>
  273. </BODY>
  274. </HTML>
  275.